Data centers are centralized facilities that are commonly used to manage data for various types of organizations, including large-scale enterprises. Such data centers typically comprise several server computers that manage network resources. For example, a data center may comprise one or more of a web server, a network server, a file server, and a print server, each comprising a separate physical machine.
On occasion, it may be desirable to migrate a server application (and therefore the server functionality) from one hardware platform to another. For instance, the server application may out-grow its existing hardware platform and may require a larger and/or faster platform to produce optimal results. To cite another example, the server's hardware platform may simply become obsolete in view of hardware advancements in the computer industry. In other cases, the server application may be being downsized and no longer requires the large hardware platform on which it currently operates (in which case the hardware is being underutilized).
Although it is possible to manually transfer a server application from one hardware platform to another, such transfer has typically been achieved by rebuilding the server application from scratch on the new hardware platform. Such rebuilding is highly complex, may require days or weeks of intensive work, and is susceptible to error. In addition, an extended rebuilding process can mean several days of server downtime and, therefore, reduced productivity and/or revenues. Moreover, even though such a transfer may be successfully accomplished, it is not repeatable. In other words, a different rebuilding process must be used to transfer between each new hardware platform pair (source and target).
Due to the difficulty of rebuilding servers in the manner described above, data centers often opt to postpone transfer of a server from one physical platform to another, sometimes indefinitely. Associated with such delay are several undesirable results including, for example, unnecessary expenditures on hardware, under utilization of existing hardware resources, and performance degradation.